#ifndef USB_LISTENER_H
#define USB_LISTENER_H

#include <QWidget>
#include <windows.h>
#include <QAbstractNativeEventFilter>
#include <dbt.h>

namespace Ui {
class usb_listener;
}

class usb_listener : public QWidget, public QAbstractNativeEventFilter
{
    Q_OBJECT

public:
    explicit usb_listener(QWidget *parent = 0);
    ~usb_listener();
    void EmitMySignal();
protected:
    bool nativeEventFilter(const QByteArray &eventType, void *message, long *result);

signals:
    void DeviceChangeCbk();
    void DevicePlugIn();
    void DevicePlugOut();

private:
    Ui::usb_listener *ui;
};

#endif // USB_LISTENER_H
